seajs.use(["common-utils", "authcode-ui"], function(comUtils, AuthCodeUtil) {
	var NfIndex = ({
		init: function() {
			if($.isFromMobile()) {
				$(".slidebar-quick-nav").hide();
			}

			this.loginForm();
			this.scrollNotice();
			this.indexSlides();
			AuthCodeUtil.checkShowAuthcode(authcodeCallback);
			$(".index-login").find(".login-type a:first").click();
		},
		loginForm: function() {
			var $indexLogin = $(".index-login");
			$indexLogin.find(".btn-loing-type").click(function(e) {
				e.stopPropagation();
				$indexLogin.find(".login-type").slideToggle("fast");
			});

			$indexLogin.find(".login-type a").click(function() {
				var a = $indexLogin.find("#lableLT");
				$indexLogin.find(".login-type").slideUp();
				if($(this).hasClass("cur")) {
					return;
				}
				$indexLogin.find("#loginForm_lognumber").val("");
				$(this).addClass("cur").siblings().removeClass("cur");
				a.parent().removeClass("input-wrap-focus");
				a.text($(this).text());

				$("#loginForm_certificatetype").val($(this).attr("value"));

			});

			$indexLogin.find(".input-text").focus(function() {
				$(this).parent().addClass("input-wrap-focus");
			}).blur(function() {
				if($(this).val() == "") {
					$(this).parent().removeClass("input-wrap-focus");
				}
			});

			$indexLogin.find(".label").click(function() {
				$(this).prev().focus();
			});

			$(document).click(function() {
				$indexLogin.find(".login-type").slideUp();
			});

			$("#loginForm_logpassword").bind("focus click", function() {
				seajs.use("soft_keyboard", function(keyboard) {
					keyboard.show(document.getElementById("loginForm_logpassword"));
				});
			});

			// 安全模式按钮切换
			$("#pwdTypeHref").click(function() {
				var $this = $(this);
				seajs.use(["safe_pwd_plugin"], function(plugins) {
					$("#loginForm_logpassword").val("");
					if($this.hasClass("btn-lock-unlock")) { // 激活
						plugins.show($("#passwdId"));
						$("#keyboardloginForm_logpassword").hide();
						$("#loginForm_logpassword").hide();
						$("#pwdTypeHref").attr("title", "点击切换为普通模式");
						$this.removeClass("btn-lock-unlock");
						$this.addClass("btn-lock-lock");
						$this.prev().addClass("input-wrap-focus");
						_paq.push(['trackEvent', Piwik_Event_Quota.login.category, Piwik_Event_Quota.login.passwd_input.action, "安全控件"]); // 页面需要已经加载piwik.js
					} else if($this.hasClass("btn-lock-lock")) { // 关闭
						plugins.hide($("#passwdId"));
						$("#loginForm_logpassword").show();
						$("#pwdTypeHref").attr("title", "点击切换为安全模式");
						$this.removeClass("btn-lock-lock");
						$this.addClass("btn-lock-unlock");
						$this.prev().removeClass("input-wrap-focus");
						$("#loginForm_logpassword").focus();
						_paq.push(['trackEvent', Piwik_Event_Quota.login.category, Piwik_Event_Quota.login.passwd_input.action, "直接输入、软键盘"]); // 页面需要已经加载piwik.js
					}
				});
			});

			$("#loginForm_submit").click(function() {
				// 密码控件相关
				$("#encryptPwd").val("");
				if($("#pwdTypeHref").hasClass("btn-lock-lock")) {
					var pwdActiveX = null;
					if($.browser.msie) {
						pwdActiveX = document.all("Tiyun");
					} else {
						pwdActiveX = document.getElementById("Tiyun");
					}

					if(pwdActiveX) {
						if(pwdActiveX.GetPassword() != "") {
							$("#encryptPwd").val(pwdActiveX.GetPassword());
							$("#loginForm_logpassword").val("deprecated");
						}
						pwdActiveX.Clearpassword();
					}
				}

				// url参数也带到后端，以做登录后的页面跳转
				var mapUrlParams = $.getUrlParams();
				for(var key in mapUrlParams) {
					if($("input[name='" + key + "']").length == 0) {
						$("#loginForm").append("<input type='hidden' name='" + key + "' value='" + mapUrlParams[key] + "' />");
					} else {
						$("input[name='" + key + "']")[0].val(mapUrlParams[key]);
					}
				}
				//点击登录按顺序校验
				if(!$.formValidator.isOneValid("loginForm_lognumber")) {
					return false;
				}
				if(!$.formValidator.isOneValid("loginForm_logpassword")) {
					return false;
				}
				var customData = "";
				customData = "{'type':'login(登录)', 'info': " +
					"{'" + Piwik_CustomField.ID_type + "':'" + $('#lableLT').text() + "'," +
					"'" + Piwik_CustomField.ID_no + "':'" + $('#loginForm_lognumber').val() + "'," +
					"'" + Piwik_CustomField.mobile + "'：''," +
					"'" + Piwik_CustomField.fund_acco + "':''," +
					"'" + Piwik_CustomField.nickname + "':''}}";
				_paq.push(['setCustomData', customData]);
				_paq.push(['trackEvent', Piwik_Event_Quota.login.category, Piwik_Event_Quota.login.cert_type.action, $('#lableLT').text()]); // 页面需要已经加载piwik.js
				_paq.push(['trackEvent', Piwik_Event_Quota.login.category, Piwik_Event_Quota.login.comm.action, '']); // 页面需要已经加载piwik.js
			});

			// 来自积分商城的登录，需要记录登录成功后的跳转url(用于第三方快捷登录后的跳转)
			$(".other-login a").click(function() {
				if($.getUrlParam("from") == "score" && $.getUrlParam("url") != null) {
					seajs.use(['common-utils'], function(Utils) {
						Utils.cookie("score_jump_url", $.getUrlParam("url"));
					});
				}
			});

			///////////////////////////////////////////////////////////////////////
			// messy, 处理某些浏览器自动记住form表单数据与占位文字的冲突
			/*var startDate = new Date();
			$indexLogin.find(".input-text").bind("input change", function() {
			    if ($(this).val() != "") {
			        $(this).parent().addClass("input-wrap-focus");
			    }
			    else {
			        $(this).parent().removeClass("input-wrap-focus");
			    }

			    if($(this).attr("id") == "loginForm_logpassword" && (new Date() - startDate) < 2000) {
			        $("#loginForm_logpassword").parent().addClass("input-wrap-focus");
			    }
			});*/

			$indexLogin.find(".input-text").each(function() {
				if($(this).val() != "") {
					$(this).parent().addClass("input-wrap-focus");
				} else {
					$(this).parent().removeClass("input-wrap-focus");
				}
			});
		},
		indexSlides: function() {
			var $indexSlides = $(".index-slides"),
				$li = $indexSlides.find("li"),
				liLen = $li.length,
				nowIndex = 0,
				newIndex = 0,
				timer = null,
				$slidesNav = $('<div class="slides-nav"></div>');
			if(liLen < 2) {
				return;
			}
			for(var i = 0, s = ""; i < liLen; i++) {
				s += '<span' + (i == 0 ? ' class="cur"' : "") + '></span>';
			}
			$slidesNav.append($(s));
			$indexSlides.append($slidesNav);

			$indexSlides.find("span").mouseenter(function() {
				if($(this).hasClass("cur")) {
					return;
				}
				$(this).addClass("cur").siblings().removeClass("cur");
				newIndex = $(this).index();
				$li.eq(newIndex).css({
					zIndex: 10
				}).stop(true, true).animate({
					opacity: 1
				});
				$li.eq(nowIndex).css({
					zIndex: 1
				}).stop(true, true).animate({
					opacity: 0
				});
				nowIndex = newIndex;
			});

			function ani() {
				timer = setInterval(function() {
					newIndex += 1;
					if(newIndex >= liLen) {
						newIndex = 0;
					}
					$li.eq(newIndex).css({
						zIndex: 10
					}).stop().animate({
						opacity: 1
					});
					$li.eq(nowIndex).css({
						zIndex: 1
					}).stop().animate({
						opacity: 0
					});
					nowIndex = newIndex;
					$slidesNav.find("span").eq(newIndex).addClass("cur").siblings().removeClass("cur")
				}, 5000);
			}

			$indexSlides.hover(function() {
				clearInterval(timer);
			}, function() {
				ani();
			})
			ani();
		},
		scrollNotice: function() {
			var c = $(".notice"),
				t = null,
				f = c.find('ul'),
				g = f.find('li'),
				l = g.length,
				h = g.height(),
				index = 0,
				isAni = false;
			if(l > 1) {
				f.append(g.clone(true)).prepend(g.clone(true));
				f.css({
					marginTop: -h * l
				});
				s();
				c.hover(function() {
					clearInterval(t)
				}, function() {
					s()
				});
			}

			function s() {
				t = setInterval(function() {
					index += 1;
					ani()
				}, 3000)
			}

			function ani() {
				isAni = true;
				f.stop().animate({
					top: -index * h
				}, function() {
					if(index == l) {
						index = 0;
						f.css({
							top: 0
						})
					}
					if(index == -l) {
						index = 0;
						f.css({
							top: 0
						})
					}
					isAni = false
				})
			}
		}
	}).init();

	$(document).unbind(".global"); // 去掉公共的ajaxstart等事件

	// 第三方直接登录，无账号绑定时的提示
	if($.getUrlParam("no_wx_login") == "1") {
		$.alert("您暂未开通微信快捷登录，请先登录后，通过个人中心—个人信息，开通微信快捷登录");
	}
	if($.getUrlParam("no_qq_login") == "1") {
		$.alert("您暂未开通QQ快捷登录，请先登录后，通过个人中心—个人信息，开通QQ快捷登录");
	}
});

var checkAuthCodeParam = function() {
	return "authcode=" + $('#loginForm_authcode').val();
};

var authcodeCallback = function() {
	$(".index-login").addClass("index-login2");
};